Document tracking and correlation

ABSTRACT

A device receives receipt data of a receipt of a transaction for a product, and processes, using a term matching technique, the receipt data to identify transaction information including a transaction date and product information. The device determines that the transaction caused a user to be covered by or eligible for a warranty for the product, generates a tag identifying the product, and associates, using a data structure, the product information, data identifying the warranty, and the tag with a record of the transaction that is accessible via a program that allows the user to search for the receipt or terms of the warranty. The device performs actions associated with assisting the user in managing the warranty, such as by reminding the user of an expiration date of the warranty and/or by assisting the user in submitting a claim based on the warranty.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/854,210, filed Apr. 21, 2020 (now U.S. Pat. No. 11,100,475), which isa continuation of U.S. patent application Ser. No. 16/189,734, filedNov. 13, 2018 (now U.S. Pat. No. 10,650,358), the contents of which areincorporated herein by reference in their entireties.

BACKGROUND

A receipt is a document acknowledging that a transaction was madebetween two or more parties. Situations often arise in which a purchaserof a product requires a copy of a receipt, but is unable to find thereceipt, or finds the receipt but is unable to identify a correspondingproduct.

SUMMARY

According to some example implementations, a method may includereceiving, by a device, receipt data of a receipt of a transaction forone or more products. The method may include processing, by using a termmatching technique, the receipt data of the receipt to identifytransaction information for the transaction. The transaction informationmay include a transaction date and product information for the one ormore products. The method may include determining that a product of theone or more products is associated with a warranty. The method mayinclude identifying one or more terms of the warranty for the product,and generating a set of tags identifying the one or more products. Themethod may include associating the transaction information, the one ormore terms of the warranty, and the set of tags with a record of thetransaction. The record of the transaction may be accessible via aprogram that includes a search feature that allows the user to searchfor the receipt or for the one or more terms of the warranty. The methodmay include performing one or more actions associated with assisting auser in managing the warranty. The one or more actions may include atleast one of: a first group of one or more actions associated withreminding the user of an expiration date of the warranty, a second groupof one or more actions associated with assisting the user in submittinga claim based on the warranty, or a third group of actions associatedwith assisting the user in renewing the warranty.

According to some example implementations, a device may include one ormore memories, and one or more processors, operatively coupled to theone or more memories, to receive receipt data of a receipt of atransaction for one or more products. The one or more processors mayprocess, using a term matching technique, the receipt data of thereceipt to identify transaction information for the transaction. Thetransaction information may include a transaction date and productinformation for the one or more products. The one or more processors maydetermine that there is a threshold likelihood that the transactioncaused a user to be covered by or eligible for a warranty for a productof the one or more products. The one or more processors may generate aset of tags identifying the one or more products. The one or moreprocessors may associate, using a data structure, the transactioninformation, data identifying the warranty, and the set of tags with arecord of the transaction. The record of the transaction may beaccessible via a program that allows the user to search for the receiptor for terms of the warranty. The one or more processors may perform oneor more actions associated with assisting the user in managing thewarranty. The one or more actions may include a first group of one ormore actions associated with reminding the user of an expiration date ofthe warranty and a second group of one or more actions associated withassisting the user in submitting a claim based on the warranty.

According to some example implementations, a non-transitorycomputer-readable medium may store instructions that include one or moreinstructions that, when executed by one or more processors of a device,cause the one or more processors to receive receipt data of a receipt ofa transaction for a product, and to process, using one or more termmatching techniques, the receipt data to identify transactioninformation for the transaction. The transaction information may includeat least one of: a merchant identifier of a merchant involved in thetransaction, a date of the transaction or product information for theproduct. The one or more instructions may cause the one or moreprocessors to determine that the transaction caused a user involved inthe transaction to be covered by or eligible for a warranty for theproduct and may cause the one or more processors to identify terms ofthe warranty for the product. The one or more instructions may cause theone or more processors to associate the transaction information, theterms of the warranty, and an electronic copy of the receipt of thetransaction with a record of the transaction. The record of thetransaction may be accessible via a program that includes a searchfeature to search for the receipt or for the terms of the warranty. Theone or more instructions may cause the one or more processors to performone or more actions associated with assisting the user in managing thewarranty. The one or more actions may include at least one of: a firstgroup of one or more actions associated with reminding the user of anexpiration date of the warranty or a second group of one or more actionsassociated with assisting the user in submitting a claim based on thewarranty.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A-1E are diagrams of an example implementation described herein.

FIG. 2 is a diagram of an example environment in which systems and/ormethods, described herein, may be implemented.

FIG. 3 is a diagram of example components of one or more devices of FIG.2.

FIGS. 4-6 are flow charts of example process implementations.

DETAILED DESCRIPTION

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

When a product is purchased, the purchaser (hereafter, “user”) may beprovided with a receipt. In some cases, the purchase will include awarranty that includes one or more promises related to the product.

In some cases, the user may be asked to provide a copy of the receipt asproof of warranty and/or proof of whether the warranty is still ineffect (e.g., the receipt may identify a date of purchase and/or a dateon which the warranty went into effect). If the user does not have thereceipt, the user might forget that the product is protected by thewarranty, be unable to prove that the product is protected by thewarranty, be unable to prove that the warranty is still in effect,and/or the like. When the user submits the claim that the promise of thewarranty has not been fulfilled, and is unable to prove the claim,resources (e.g., processing resources, network resources, memoryresources, and/or the like) of a device used to submit the claim and/ora system used to process the claim are needlessly wasted by processingthe claim for which there is no proof of warranty.

Some implementations described herein provide a document managementplatform to capture transaction information from receipt data of areceipt of a transaction for a product, to determine that thetransaction caused a user to be covered by or eligible for a warrantyfor the product, and to perform actions associated with assisting theuser in managing the warranty. For example, a user may receive a receiptas part of a transaction for a product. In this case, the user mayinteract with a user device (e.g., a smart phone) to capture an image ofthe receipt and may provide the image of the receipt to the documentmanagement platform (e.g., by uploading the image of the receipt to aprogram or a website). Additionally, the document management platformmay use a character recognition technique (e.g., an optical characterrecognition (OCR) technique)) to convert the image to text data. In thiscase, the document management platform may use a term matching techniqueto process the text data to identify a date of the transaction, productinformation for the product, a merchant identifier of a merchantinvolved in the transaction, and/or the like.

Furthermore, the document management platform may determine that theuser was covered by the warranty for the product and may identify termsof the warranty. Additionally, the document management platform maygenerate a set of tags that allow the user to access a search feature ofa program to search for and view the terms of the warranty and/or thetransaction information included in the receipt. Moreover, the documentmanagement platform may perform one or more actions associated withassisting the user in managing the warranty, such as by providing theuser with a reminder of an expiration date of the warranty, assistingthe user in submitting a claim that a term of the warranty has not beenfulfilled, assisting the user with renewing the warranty, and/or thelike.

In this way, the document management platform may help ensure that theuser does not forget that the product is protected by the warranty,assists the user in submitting a claim based on the warranty, assiststhe user in renewing the warranty, and/or the like. This allows thedocument management platform to reduce or eliminate submission of claimsthat are unlikely to succeed without the assistance provided by thedocument management platform (e.g., without proof of warranty), therebyconserving resources (e.g., processing resources, network resources,memory resources, and/or the like) of devices that would otherwise beused to needlessly submit, process, and/or reject those claims.

Additionally, processes described herein save time of the user byreducing or eliminating time spent searching for the receipt, time spentnavigating a warranty system to determine terms associated with thewarranty or to submit a claim based on the warranty, and/or the like,and save financial resources of the user by ensuring that the warrantyis active, that the user is able to make a successful claim based on thewarranty, and/or the like. Moreover, the warranty system conservesresources even if the claim submitted by the user is valid because thewarranty system would not have to search for and correlate warranty andpurchase information of the user.

Furthermore, several different stages of the process for managing thewarranty of the product are automated, which may remove humansubjectivity and waste from the process, and which may improve speed andefficiency of the process and conserve computing resources (e.g.,processor resources, memory resources, and/or the like). For example, insome cases, the document management platform may obtain consent from theuser to automatically analyze (e.g., mine) an e-mail account of the userto obtain an electronic copy of the receipt. In this case, the documentmanagement platform eliminates a need for the user to provide image dataof the receipt, thereby eliminating scenarios where the user forgets totake a photograph of the receipt, where the photograph captured by theuser is blurry or unclear, and/or the like, thereby improving qualityand efficiency of the process. Additionally, implementations describedherein use a rigorous, computerized process to perform tasks or rolesthat were not previously performed or were previously performed usingsubjective human intuition or input.

FIGS. 1A-1E are diagrams of an example implementation 100 describedherein. For example, example implementation 100 may include a documentmanagement platform that interacts with a user device to assist a userwith managing a warranty of a product.

As shown in FIG. 1A by reference number 105, the user may use the userdevice to capture an image of a receipt of a transaction that includesone or more products. For example, the user may use the user device toaccess a program (e.g., application) or a website with a feature thatcan capture an image of the receipt of the transaction.

In some implementations, the program may be a warranty managementprogram that is dedicated to managing receipts and warranties ofproducts. In some implementations, the program may be a banking programthat provides the user with one or more banking services (e.g., anonline banking application). In this case, the feature that can capturethe image of the receipt and/or other features relating to managingreceipts and warranties may be provided as an extension (e.g., aplug-in) to the banking program. This may permit the user to use thebanking program to view a transaction history that includes thetransaction, view specific details of the transaction (e.g., productinformation of a product, etc.), view or download an electronic copy ofthe receipt of the transaction, view warranty information if one of theproducts is protected by warranty, and/or the like.

As shown by reference number 110, the user device may provide receiptdata for the receipt to the document management platform. For example,the user device may capture the image of the receipt and may provideimage data of the receipt to the document management platform (e.g., viaan application programming interface (API)). In some cases, the imagemay be captured using a feature of the program described herein. Inother cases, the image may be captured using another program andprovided to the document management platform using an API accessible viathe program.

Additionally, or alternatively, the user device may provide the documentmanagement platform with an electronic copy of the receipt (referred tohereafter as an electronic receipt). For example, if the user completesthe transaction and requests that the electronic receipt be provided toan electronic mail (e-mail) account of the user, the user may access theelectronic receipt from the e-mail account and may cause the electronicreceipt to be provided to the document management platform. In thiscase, the user may cause the electronic receipt to be provided to thedocument management platform by transferring the electronic receipt tothe program, such as by downloading the electronic receipt from ane-mail and uploading the electronic receipt to the program.

Additionally, or alternatively, the document management platform mayautomatically obtain the electronic receipt. For example, the user mayhave provided consent to allow the document management platform toaccess information stored within an e-mail account of the user. In thiscase, the document management platform may use a secure accessdelegation service (e.g., OAuth, etc.) to access a set of e-mailsincluded in the e-mail account of the user and may analyze termsincluded in the set of e-mails to identify and obtain the electronicreceipt of the transaction.

In some implementations, the document management platform may obtain theelectronic receipt based on detecting a change to a transaction historyof an account of the user. For example, the document management platformmay monitor a transaction history associated with an account of the user(e.g., an online banking account), and may, upon identifying a change tothe transaction history (e.g., the transaction made by the user may havebeen added to the transaction history), use the secure access delegationservice to obtain a set of e-mails that include the electronic receipt.In this case, the document management platform may search the set ofe-mails for the electronic receipt using values identified in thetransaction history of the account of the user, such as a product cost,a product name, a merchant name, and/or the like.

In some cases, the document management platform may obtain theelectronic receipt based on another trigger. For example, rather thanmonitoring the transaction history associated with the account of theuser, the document management platform may periodically use the secureaccess delegation service to analyze e-mails to identify an electronicreceipt that is included in an e-mail. In some cases, such as when theprogram is a banking program, the document management platform may scana transaction history of the user to identify a correspondingtransaction, such that the document management platform is able toassociate the record of the transaction with the electronic receipt.

By using the secure access delegation service to obtain the electronicreceipt, the document management platform conserves resources (e.g.,processing resources, network resources, memory resources, and/or thelike) and reduces opportunities for human error and waste.

In some implementations, the secure access delegation service may haverestricted access to the e-mail account of the user. For example, aspecial folder may be accessible to the secure access delegationservice, while other folders of the e-mail account may be inaccessible.This improves security and protects personal information of the user,while still allowing the document management platform to automate one ormore steps of the process of managing receipts and/or warranties forproducts.

As shown by reference number 115, the document management platform mayidentify transaction information included in the receipt. For example,the document management platform may use a character recognitiontechnique, a term matching technique (e.g., a technique to compareproduct identifiers displayed on the receipt to actual product names, anatural language processing technique, etc.), and/or the like, toprocess the receipt data to identify the transaction information. Thetransaction information may include product information for one or moreproducts, a transaction date, a merchant identifier of a merchantassociated with the transaction, and/or the like. The productinformation may include a product identifier for a product (e.g., aproduct name, a product code, and/or the like), a price of the product,and/or the like.

In some implementations, the document management platform may convertthe image from image data to text data. For example, assume the documentmanagement platform receives the image of the receipt of thetransaction. In this case, the document management platform may processthe image using the character recognition technique (e.g., an opticalcharacter recognition (OCR) technique or a similar technique) to convertthe image to a text format that may be further processed to identify thetransaction information.

Additionally, or alternatively, the document management platform mayidentify the transaction information by using a text matching techniquethat compares the receipt data and data included in a set of templates.For example, the document management platform may store or have accessto a set of templates that associate product identifiers that arecommonly found in receipts with product names for the products, producttypes identifying a type of product, and/or the like. In this case, thedocument management platform may analyze the receipt to identify a setof product identifiers and may reference the set of templates toidentify product identifiers that are stored in association withparticular product names and/or product types. As an example, thereceipt may use a line-by-line itemization approach whereby each line ofthe receipt represents a different product identifier and pricecombination. Thereby, the document management platform may analyze eachline of the receipt to identify which text values represent productidentifiers for the one or more products and which values representprices for the one or more products. A similar approach may be used toidentify a date of the transaction (e.g., by comparing receipt data to atemplate that includes values commonly found in dates, such as numericalvalues used in conjunction with dashes or slashes).

Additionally, or alternatively, the document management platform may usea natural language processing technique to identify the transactioninformation. For example, the document management platform may use afuzzy matching technique to match a product identifier with a productname or product type in scenarios where the product identifier may onlymatch the product name or product type approximately (rather thanexactly). In this case, the document management platform may match aproduct identifier to a product name or product type using a worddistance technique (e.g., a Levenshtein distance technique, aJaro-Winkler distance technique, etc.), an N-gram technique, and/or thelike.

Additionally, or alternatively, the document management platform may usea data mining technique to identify the transaction information. Forexample, in some cases, a receipt may include a product identifier thatis distinct from the name of the product, such that the documentmanagement platform may be unable to identify the product by processingthe product information included in the receipt. As an example, assume awashing machine is listed on a receipt as WMAV2JDW. In this case, thedocument management platform may use a data mining technique to analyzea website of a merchant that provided the product to the user toidentify a name of the product and/or a product type of the product. Forexample, the document management platform may analyze the website anddetermine that product identifiers beginning with WMA are washingmachines and that V2JDW is indicative of a second version of a washingmachine that was created by the organization John Doe's Washers.Thereby, the document management platform may be able to use the datamining technique to identify the transaction information.

Additionally, or alternatively, the document management platform mayidentify transaction information using a computer vision technique(e.g., image recognition and matching). For example, in some cases, areceipt might not include text identifying a merchant, but instead maysimply include a logo of the merchant. In this case, the documentmanagement platform may use the computer vision technique to analyze thelogo and determine that the receipt is for a transaction involving aparticular merchant.

In some implementations, the document management platform may identifytransaction information that includes warranty information of a warrantyfor a product. For example, if a user paid an additional cost for awarranty, the warranty and its cost may be included in one or morefields of the receipt. This may allow the warranty information to beidentified using one or more techniques described herein. In someimplementations, the document management platform may need to performadditional actions to determine whether the product is protected by awarranty, whether the user was provided the warranty, and/or the like,as described further herein.

In this way, the document management platform identifies transactioninformation included in the receipt of the transaction, which may beused for managing a warranty for one of the products, as describedfurther herein.

As shown in FIG. 1B by reference number 120, the document managementplatform may determine that the transaction caused the user to becovered by a warranty for a product and may identify the terms of thewarranty. For example, the document management platform may determinethat a product, of the one or more products, is protected by warranty,and that engaging in the transaction caused the user to be covered bythe warranty or at least eligible to be covered by the warranty.

In some implementations, the document management platform may determinethat the user has been covered by a warranty for a product by using aninterface of the program to provide the user with warranty questions.For example, the document management platform may provide, for displayon an interface of the user device (e.g., as part of the program), a setof warranty questions asking the user whether any of the one or moreproducts is covered by a warranty, asking whether the user explicitlypurchased the warranty, asking the user for terms of the warranty (suchas length of warranty, defects covered, etc.), and/or the like. In thiscase, the user may interact with the interface to respond to thewarranty questions, which may cause a set of responses to be provided tothe document management platform. The document management platform mayprocess the set of responses to determine that the user has purchased aproduct that is protected by warranty and/or terms of the warranty.

Additionally, or alternatively, the document management platform may usea data mining technique to determine that the transaction caused theuser to be covered by a warranty. For example, the document managementplatform may determine that a product that was part of the transactionautomatically is covered by a warranty. In this case, the documentmanagement platform may use a merchant identifier found in the receiptto identify a merchant (e.g., a retailer, a manufacturer, etc.) and mayidentify a website associated with the merchant. Additionally, thedocument management platform may use the data mining technique and/or anatural language processing technique to analyze the website to identifytext indicating that the product is automatically covered by thewarranty (e.g., upon purchase), to identify the product in a list ofproducts that are known to be automatically covered by the warranty,and/or the like.

In some implementations, the document management platform may determinethat the product is associated with a warranty. For example, thedocument management platform may determine that the product has awarranty that is available but requires the user to register for orpurchase the warranty, that the product has multiple types of warrantiesavailable, and/or the like.

In some cases, the document management platform may use one or moretechniques described herein to determine that the product is associatedwith a warranty. For example, the user may be provided with an e-mailindicating that the user is being offered the warranty, is eligible forthe warranty, has purchased the warranty, and/or the like. In this case,the document management platform may use the secure access delegationtechnique to access the e-mail and may analyze terms included in thee-mail to determine that the product is associated with the warranty. Toprovide a few other examples, the document management platform maydetermine that the product is associated with the warranty by asking theuser (e.g., via a user interface), by receiving and analyzing (e.g.,using OCR) an image describing terms the warranty (e.g., which may beprovided by the user), by using machine learning to make thedetermination (e.g., in a manner similar to that described below),and/or the like.

Additionally, or alternatively, the document management platform may usemachine learning to determine a likelihood that the user was covered bythe warranty for the product. For example, assume the documentmanagement platform trained or received a data model that had beentrained on historical warranty data. The historical warranty data mayinclude, for a plurality of warranties, products, and transactions, dataidentifying terms of a warranty for a product, data identifying anexpiration of the warranty, data identifying when users purchased orwere covered by the warranty, demographic data relating to the users(e.g., an age, a gender, a profession, and/or the like), historicallocation data of the users, historical product data for the product towhich the warranty applies, and/or the like. The data model may use oneor more machine learning techniques to determine a likelihood that theuser was covered by a warranty for one of the one or more productspurchased via the transaction. The one or more machine learningtechniques may include a regression technique, a clustering technique, atechnique using a decision tree, a technique using a neural network,and/or the like.

In this case, the document management platform may provide thetransaction information (and/or an identifier of the user) as input tothe data model to cause the data model to output one or more indicatorvalues that may be used to predict whether the user was covered by awarranty. The one or more indicator values may serve as indicators of aconfidence level in whether the product is covered by a warranty, aconfidence level in a type of warranty associated with the product, aconfidence level in the warranty having particular terms, and/or thelike. The indicator values may be based on trends and/or patternsidentified when the data model was trained. For example, if a producthas an optional warranty, but historically 95% of consumers purchase thewarranty for the product, or 95% of consumers of a demographic that issimilar to a demographic of the user purchase the warranty for theproduct, the indicator values output by the data model may be used todetermine that there is a high likelihood that the user was covered by awarranty for the product.

In some implementations, the document management platform may determineone or more steps to cause the warranty to take effect. For example, thedocument management platform may use a technique described here (e.g.,the secure access delegation technique, the data mining technique, themachine learning technique, and/or the like) to determine the one ormore steps that cause the warranty to take effect. To provide a fewexamples, the document management platform may analyze an e-mailprovided to the e-mail account of the user to determine that the userhas to visit a registration webpage to sign up for the warranty, to calla 1-800 number to sign up for the warranty, to submit documentation(e.g., a paper document, an electronic document, etc.) to sign up forthe warranty, and/or the like.

In some implementations, the document management platform may initiatethe one or more steps to cause the warranty to take effect. For example,the document management platform may provide the user with a link to theweb site to sign up for the warranty (e.g., via e-mail, text message,the program or website that is used to manage the warranty, etc.), mayprovide the user with the 1-800 number to sign up for the warranty, mayprovide the user with a blank copy of the document needed to the sign upfor the warranty, and/or the like. In some cases, the documentmanagement platform may have access to user profile information of theindividual and may automatically populate fields of the website that areused to sign up for the warranty, fields of an electronic copy of thedocument used to sign up for the warranty, and/or the like. In othercases, the document management platform may perform other actions, suchas causing a mobile phone of a user to begin dialing the 1-800 number,scheduling a calendar reminder in an electronic calendar of the user tosign up for the warranty before a particular date, and/or the like.

In some implementations, the document management platform may determinethe terms of the warranty. For example, the document management platformmay determine the terms of the warranty using one or more techniquesdescribed above, such as by asking the user, using the data miningtechnique, using the data model, and/or the like.

In this way, the document management platform determines that thetransaction was likely to cause the user to be covered by a warranty andidentifies terms that are likely to be part of the warranty.

As shown by reference number 125, the document management platform maygenerate a set of tags related to the one or more products. For example,the user may be able to use a search feature of the program or thewebsite (e.g., the program or the website described in connection withFIG. 1A) to search for the electronic receipt and/or to view the termsof the warranty. In this case, the document management platform maygenerate a set of tags that are to serve as search terms for the one ormore products and/or the receipt. The set of tags may describe terms orphrases that are commonly input by users, and may include a tagidentifying a name of a product, a tag identifying a variant of the nameof the product (e.g., a commonly used nickname or shorthand for theproduct), a tag identifying a category name or genus term for theproduct, a tag that includes a merchant name and/or a product name,and/or the like.

In some implementations, the document management platform may generateone or more tags by performing a synonym mapping technique. For example,the document management platform may perform a synonym mapping techniquethat identifies synonyms of the name of the product, a type of product,and/or the like, and may generate one or more tags for the synonyms. Inthis case, the document management platform may reference a datastructure that associates synonyms with product identifiers, productsnames, product types, and/or the like. The data structure may include asynonym dictionary, a product taxonomy, a knowledge graph, and/or thelike.

Additionally, or alternatively, the document management platform maygenerate one or more tags of variants of search terms by performinganother type of natural language processing technique. For example, thedocument management platform may generate a variant of a search termthat incorporates different word tenses or conjugations (e.g., a washmachine, a washing machine, a washer machine, etc.).

Additionally, or alternatively, the document management platform maygenerate one or more tags using machine learning. For example, thedocument management platform may train or receive a data model that hasbeen trained on historical search terms data. The historical searchterms data may include data identifying historical search terms, dataidentifying a frequency or degree to which users searched for particularhistorical search terms, data identifying results of successful searchesand/or unsuccessful searches, and/or the like. The data model may betrained via one or more machine learning techniques to predict searchterms, variations of search terms, and/or the like. In this case, thedocument management platform may provide, as input to the data model,the product information for the one or more products (and/or a useridentifier), which may cause the data model to output one or more valuesthat may indicate a confidence level in whether a particular search termwill be used by the user.

In some implementations, the document management platform may obtainuser approval to use a set of tags. For example, the document managementplatform may generate the set of tags and may provide the set of tags tobe displayed as suggested tags via an interface of the program. This mayallow the user to approve and/or reject specific tags, such thatapproved tags may be used as search terms when the user subsequentlyutilizes the search feature of the program. Additionally, oralternatively, the document management platform may automatically usethe set of tags as part of the search feature of the program. In somecases, the document management platform may automatically use a tag ormay request approval of the user to use the tag based on whether thetag, which had been generated using machine learning, satisfies athreshold confidence level (e.g., a confidence level that the user islikely to use the tag as a search term).

As shown by reference number 130, the document management platform mayassociate the transaction information, warranty information for thewarranty (e.g., a warranty identifier, the terms of the warranty, etc.),the set of tags, and/or the electronic receipt, with a record of thetransaction. For example, to allow the user to utilize the searchfeature of the program, the document management platform may use a datastructure to establish an association between the transactioninformation, the warranty information, the set of tags, the electronicreceipt, and/or a transaction identifier used to create a record of thetransaction. In this way, the user may search for the electronic receiptand/or the warranty information using one or more keywords. For example,the document management platform may reference the data structure toidentify tags that match or are close to the one or more keywords, andmay identify the transaction information, the warranty information,and/or the electronic receipt, that are associated with the tags thathave been identified.

In this way, the document management platform establishes associationsbetween information relating to the transaction, such that theinformation may be used to assist the user in managing the warranty, asdescribed further herein.

As shown in FIG. 1C, the user may use a search feature of the program tolook up warranty information for the warranty of the product and/or maylook up the electronic receipt of the transaction. For example, and asshown by reference number 135, the user may interact with the userdevice to log into the program and may input search terms to search forthe electronic receipt and/or the warranty information. The search termsmay include a merchant name, a product name, a product type, atransaction date, and/or the like. When the user submits the search, asearch request that includes the search terms may be provided to thedocument management platform.

As shown by reference number 140, the document management platform mayidentify search results. For example, the document management platformmay reference the data structure to identify the search results. In thiscase, the document management platform may use the search terms as partof a search query to identify one or more tags that match the searchterms or that satisfy a threshold level of similarity with the searchterms. Additionally, the search request may specify a type ofinformation being requested, such as warranty information (e.g.,indicating the terms of the warranty), the electronic receipt, and/orthe like. This may allow the document management platform to identifythe type of information being requested.

As shown by reference number 145, the document management platform mayprovide the search results to the user device. As shown by referencenumber 150, the user device may display the search results. For example,the search results may be displayed as part of an interface of theprogram or the website. In the depicted example, the user may input theterm Washer into the search feature. This may cause the search resultsto display a transaction identifier for a transaction (shown asTransaction Identifier 134), a product type (shown as Washing Machine),a product name (shown as John Doe Super Washer v1.2), an indication ofwhether the product has a warranty (shown as Yes), a warranty expirationdate (shown as 6-1-22), and/or the like.

In some implementations, the user may be able to download one or more ofthe search results. For example, the user may download an electroniccopy of the receipt of the transaction that may be printed and used asproof of a start date for the warranty of the product.

In this way, the document management platform allows the user to look upthe warranty information for the product and/or the electronic receiptof the transaction.

As shown in FIG. 1D, the document management platform may remind theuser of the expiration date of the warranty. For example, as shown byreference number 155, the document management platform may determine tosend a notification reminding the user of the expiration date of thewarranty. In this case, the document management platform may beconfigured with a rule or threshold value indicating when to provide theuser with the reminder of the expiration date of the warranty. Thenotification may include the expiration date (and/or expected expirationdate) of the warranty, information needed to renew the warranty (e.g.,contact information needed to renew the warranty, such as a phonenumber, e-mail address, renewal webpage, and/or the like), informationneeded to make a claim based on a term of the warranty not beingfulfilled (e.g., the electronic copy of the receipt related to thewarranty), and/or the like.

As an example, the notification may depend on a timer that, uponexpiring or hitting a certain time, causes the document managementplatform to determine to send the notification. As another example, thedocument management platform may periodically check a current date andmay determine whether the current date is within a threshold time periodof the expiration date of the warranty. If the current date is withinthe threshold time period, the document management platform maydetermine to send the notification to the user.

As shown by reference number 160, the document management platform mayprovide the notification to the user. For example, the documentmanagement platform may provide the notification to the user device(e.g., via a short message service (SMS), via the program, etc.). Asanother example, the document management platform may provide thenotification to an account associated with the user (e.g., an e-mailaccount, an account linked to the program, etc.).

In this way, the document management platform performs actions that mayhelp ensure that the user does not forget about the warranty, is able tosubmit a claim prior to expiration of the warranty, is able to provethat the warranty is in force, is able to renew the warranty in a timelymanner, and/or the like.

As shown in FIG. 1E, the document management platform may performactions associated with assisting the user in submitting a claim basedon the warranty. For example, and as shown by reference number 165, theuser may interact with the user device to request an electronic copy ofthe receipt (e.g., in order to submit a claim for breach of warranty, torequest assistance in submitting the claim for breach of warranty,and/or the like). In some implementations, an original receipt may besaved and may be used when submitting the claim based on the warranty.By saving the original receipt (e.g., the original electronic receipt),and submitting the original receipt, the authenticity of the claim isimproved relative to submitting a copy of the receipt. In some cases,one or more security measures may be taken to be ensure that theoriginal receipt is in fact the original receipt.

As shown by reference number 170, the document management platform mayperform one or more actions to satisfy the request. For example, assumethe user interacts with the program or the website to request theelectronic copy of the receipt. In this case, the document managementplatform may reference the data structure to identify and provide theelectronic copy of the receipt for display via an interface of theprogram or the website. The electronic copy may be downloadable, suchthat the user is able to manually print out the receipt and use thereceipt as evidence, for example, of a start date of the warranty.

In some implementations, the user may interact with the program or thewebsite to request to submit a claim under the terms of the warranty.For example, the program may have an interface directed towardsubmitting or assisting in pursuing claims covered under the terms ofthe warranty. In this case, the user may use the search feature of theprogram or the website to permit the document management platform toidentify the electronic receipt. Additionally, the document managementplatform may identify a manner in which the claim is to be submitted andmay perform actions to submit the claim. For example, the documentmanagement platform may populate fields of a claim form that is providedvia a webpage of a merchant. In this case, the document managementplatform may populate fields that ask for personal information of theuser, product information for the product, proof of warranty (e.g., suchas by uploading the electronic receipt), and/or the like.

In some implementations, a merchant may request that the claim besubmitted via another mode of communication, such as by mail, e-mail,telephone, and/or the like. In these cases, the document managementplatform may perform one or more actions to submit the claim or assistthe user in submitting the claim. As an example, if the claim is to besubmitted via telephone, the document management platform may populatefields of a templated claim form, such that the user may read the claimform aloud during a telephone call. In some cases, such as when theclaim submission service is automated, the document management platformmay interact with a communication device (e.g., a mobile phone, a smartphone, etc.) to automatically select menu choices needed to submit theclaim.

In some implementations (not shown), the document management platformmay assist the user in renewing a warranty. For example, the documentmanagement platform may automatically populate a renewal form to renewthe warranty, prior to the expiration date of the warranty, and may beconfigured to automatically renew the warranty or to provide thepopulated renewal form to the user device to be reviewed by the user.

In this way, the document management platform ensures that the user doesnot forget that the product is covered by the warranty, assists the userin submitting a claim based on the warranty, assists the user inrenewing the warranty, and/or the like. Furthermore, the documentmanagement platform conserves resources (e.g., processing resources,network resources, memory resources, and/or the like) relative to aninferior platform that is unable to effectively assist the user inmanaging the warranty of the product.

As indicated above, FIGS. 1A-1E are provided merely as an example. Otherexamples may differ from what was described with regard to FIGS. 1A-1E.For example, there may be additional devices and/or networks, fewerdevices and/or networks, different devices and/or networks, ordifferently arranged devices and/or networks than those shown in FIGS.1A-1E. Furthermore, two or more devices shown in FIGS. 1A-1E may beimplemented within a single device, or a single device shown in FIGS.1A-1E may be implemented as multiple and/or distributed devices.Additionally, or alternatively, a set of devices (e.g., one or moredevices) of example implementation 100 may perform one or more functionsdescribed as being performed by another set of devices of exampleimplementation 100.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods, described herein, may be implemented. As shown in FIG.2, environment 200 may include a user device 210, a data storage device220, a document management platform hosted within a cloud computingenvironment 240, and/or a network 250. Devices of environment 200 mayinterconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

User device 210 includes one or more devices capable of receiving,generating, storing, processing, and/or providing information associatedwith a transaction for one or more products. For example, user device210 may include a communication and/or computing device, such as amobile phone (e.g., a smart phone, a radiotelephone, etc.), a laptopcomputer, a tablet computer, a handheld computer, a server computer, agaming device, a wearable communication device (e.g., a smartwristwatch, a pair of smart eyeglasses, etc.), or a similar type ofdevice. In some implementations, user device 210 may support a programthat allows a user to search for transactional information relating to atransaction for one or more products. In some implementations, theprogram may be a program designed for managing warranties of products.In some implementations, the program may be an online banking program,and may integrate one or more warranty management features in with otheraspects of the online banking program. For example, the program mayallow a user to view a transaction history, select a transaction, andview and/or download a receipt for the transaction, view an itemizedlist of products purchased during the transaction, and/or the like.

Data storage device 220 includes one or more devices capable ofreceiving, storing, generating, determining, and/or providinginformation associated with a transaction for one or more products. Forexample, data storage device 220 may include a server device or a groupof server devices. In some implementations, a first data storage device220 may support a data structure that establishes an association betweenproduct information for a product, warranty information for a warrantyof the product, a set of tags identifying the product, an electroniccopy of a receipt of a transaction for the product, and/or an identifierof a record of the transaction. Additionally, or alternatively, thefirst data storage device 220 (or a second data storage device 220) maystore historical data used to train machine learning models, such ashistorical warranty data, historical search terms data, and/or the like.In some implementations, data storage device 220 may interact withdocument management platform 230 to provide document management platform230 with search results to satisfy a search performed by a user via userdevice 210. In some implementations, data storage device 220 may providethe historical data to document management platform 230.

Document management platform 230 includes one or more devices capable ofreceiving, storing, generating, determining, and/or providinginformation associated with a transaction for one or more products. Forexample, document management platform 230 may include a server device(e.g., a host server, a web server, an application server, etc.), a datacenter device, or a similar device. In some implementations, documentmanagement platform 230 may interact with user device 210 to assist auser in managing a warranty of a product.

In some implementations, as shown, document management platform 230 maybe hosted in cloud computing environment 240. Notably, whileimplementations described herein describe document management platform230 as being hosted in cloud computing environment 240, in someimplementations, document management platform 230 might not becloud-based (i.e., may be implemented outside of a cloud computingenvironment) or may be partially cloud-based.

Cloud computing environment 240 includes an environment that hostsdocument management platform 230. Cloud computing environment 240 mayprovide computation, software, data access, storage, etc. services thatdo not require end-user knowledge of a physical location andconfiguration of system(s) and/or device(s) that hosts documentmanagement platform 230. As shown, cloud computing environment 240 mayinclude a group of computing resources 235 (referred to collectively as“computing resources 235” and individually as “computing resource 235”).

Computing resource 235 includes one or more personal computers,workstation computers, server devices, or another type of computationand/or communication device. In some implementations, computing resource235 may host document management platform 230. The cloud resources mayinclude compute instances executing in computing resource 235, storagedevices provided in computing resource 235, data transfer devicesprovided by computing resource 235, and/or the like. In someimplementations, computing resource 235 may communicate with othercomputing resources 235 via wired connections, wireless connections, ora combination of wired and wireless connections.

As further shown in FIG. 2, computing resource 235 may include a groupof cloud resources, such as one or more applications (“APPs”) 235-1, oneor more virtual machines (“VMs”) 235-2, virtualized storage (“VSs”)235-3, one or more hypervisors (“HYPs”) 235-4, and/or the like.

Application 235-1 may include one or more software applications that maybe provided to or accessed by user device 210 and/or data storage device220. Application 235-1 may eliminate a need to install and execute thesoftware applications on these devices. For example, application 235-1may include software associated with document management platform 230and/or any other software capable of being provided via cloud computingenvironment 240. In some implementations, one application 235-1 maysend/receive information to/from one or more other applications 235-1,via virtual machine 235-2. In some implementations, application 235-1may be the program or the website described herein, may support theprogram or the website described herein, and/or the like.

Virtual machine 235-2 may include a software implementation of a machine(e.g., a computer) that executes programs like a physical machine.Virtual machine 235-2 may be either a system virtual machine or aprocess virtual machine, depending upon use and degree of correspondenceto any real machine by virtual machine 235-2. A system virtual machinemay provide a complete system platform that supports execution of acomplete operating system (“OS”). A process virtual machine may executea single program and may support a single process. In someimplementations, virtual machine 235-2 may execute on behalf of anotherdevice (e.g., user device 210 and/or data storage device 220, etc.), andmay manage infrastructure of cloud computing environment 240, such asdata management, synchronization, or long-duration data transfers.

Virtualized storage 235-3 may include one or more storage systems and/orone or more devices that use virtualization techniques within thestorage systems or devices of computing resource 235. In someimplementations, within the context of a storage system, types ofvirtualizations may include block virtualization and filevirtualization. Block virtualization may refer to abstraction (orseparation) of logical storage from physical storage so that the storagesystem may be accessed without regard to physical storage orheterogeneous structure. The separation may permit administrators of thestorage system flexibility in how the administrators manage storage forend users. File virtualization may eliminate dependencies between dataaccessed at a file level and a location where files are physicallystored. This may enable optimization of storage use, serverconsolidation, and/or performance of non-disruptive file migrations.

Hypervisor 235-4 may provide hardware virtualization techniques thatallow multiple operating systems (e.g., “guest operating systems”) toexecute concurrently on a host computer, such as computing resource 235.Hypervisor 235-4 may present a virtual operating platform to the guestoperating systems and may manage the execution of the guest operatingsystems. Multiple instances of a variety of operating systems may sharevirtualized hardware resources.

Network 250 includes one or more wired and/or wireless networks. Forexample, network 250 may include a cellular network (e.g., a fifthgeneration (5G) network, a fourth generation (4G) network, such as along-term evolution (LTE) network, a third generation (3G) network, acode division multiple access (CDMA) network, a public land mobilenetwork (PLMN), a local area network (LAN), a wide area network (WAN), ametropolitan area network (MAN), a telephone network (e.g., the PublicSwitched Telephone Network (PSTN)), a private network, an ad hocnetwork, an intranet, the Internet, a fiber optic-based network, a cloudcomputing network, or the like, and/or a combination of these or othertypes of networks.

The number and arrangement of devices and networks shown in FIG. 2 areprovided as an example. In practice, there may be additional devicesand/or networks, fewer devices and/or networks, different devices and/ornetworks, or differently arranged devices and/or networks than thoseshown in FIG. 2. Furthermore, two or more devices shown in FIG. 2 may beimplemented within a single device, or a single device shown in FIG. 2may be implemented as multiple, distributed devices. Additionally, oralternatively, a set of devices (e.g., one or more devices) ofenvironment 200 may perform one or more functions described as beingperformed by another set of devices of environment 200.

FIG. 3 is a diagram of example components of a device 300. Device 300may correspond to user device 210, data storage device 220 and/ordocument management platform 230. In some implementations, user device210, data storage device 220 and/or document management platform 230 mayinclude one or more devices 300 and/or one or more components of device300. As shown in FIG. 3, device 300 may include a bus 310, a processor320, a memory 330, a storage component 340, an input component 350, anoutput component 360, and a communication interface 370.

Bus 310 includes a component that permits communication among thecomponents of device 300. Processor 320 may be implemented in hardware,firmware, or a combination of hardware and software. Processor 320includes a central processing unit (CPU), a graphics processing unit(GPU), an accelerated processing unit (APU), a microprocessor, amicrocontroller, a digital signal processor (DSP), a field-programmablegate array (FPGA), an application-specific integrated circuit (ASIC),and/or another type of processing component. In some implementations,processor 320 includes one or more processors capable of beingprogrammed to perform a function. Memory 330 includes a random accessmemory (RAM), a read only memory (ROM), and/or another type of dynamicor static storage device (e.g., a flash memory, a magnetic memory,and/or an optical memory) that stores information and/or instructionsfor use by processor 320.

Storage component 340 stores information and/or software related to theoperation and use of device 300. For example, storage component 340 mayinclude a hard disk (e.g., a magnetic disk, an optical disk, amagneto-optic disk, and/or a solid state disk), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 350 includes a component that permits device 300 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 350 mayinclude a sensor for sensing information (e.g., a global positioningsystem (GPS) component, an accelerometer, a gyroscope, and/or anactuator). Output component 360 includes a component that providesoutput information from device 300 (e.g., a display, a speaker, and/orone or more light-emitting diodes (LEDs)).

Communication interface 370 includes a transceiver-like component (e.g.,a transceiver and/or a separate receiver and transmitter) that enablesdevice 300 to communicate with other devices, such as via a wiredconnection, a wireless connection, or a combination of wired andwireless connections. Communication interface 370 may permit device 300to receive information from another device and/or provide information toanother device. For example, communication interface 370 may include anEthernet interface, an optical interface, a coaxial interface, aninfrared interface, a radio frequency (RF) interface, a universal serialbus (USB) interface, a Wi-Fi interface, a cellular network interface, orthe like.

Device 300 may perform one or more processes described herein. Device300 may perform these processes based on processor 320 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 330 and/or storage component 340. Acomputer-readable medium is defined herein as a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions may be read into memory 330 and/or storagecomponent 340 from another computer-readable medium or from anotherdevice via communication interface 370. When executed, softwareinstructions stored in memory 330 and/or storage component 340 may causeprocessor 320 to perform one or more processes described herein.Additionally, or alternatively, hardwired circuitry may be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 3 are provided asan example. In practice, device 300 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 3. Additionally, or alternatively, aset of components (e.g., one or more components) of device 300 mayperform one or more functions described as being performed by anotherset of components of device 300.

FIG. 4 is a flow chart of an example process 400. In someimplementations, one or more process blocks of FIG. 4 may be performedby a document management platform (e.g., document management platform230). In some implementations, one or more process blocks of FIG. 4 maybe performed by another device or a group of devices separate from orincluding the document management platform, such as a user device (e.g.,user device 210), a data storage device (e.g., data storage device 220)and/or the like.

As shown in FIG. 4, process 400 may include receiving receipt data of areceipt of a transaction for one or more products (block 410). Forexample, the document management platform (e.g., using computingresource 235, processor 320, memory 330, storage component 340, inputcomponent 350, communication interface 370, and/or the like) may receivereceipt data of a receipt of a transaction for one or more products, asdescribed above in connection with FIGS. 1A-1E.

As further shown in FIG. 4, process 400 may include processing, by usinga term matching technique, the receipt data of the receipt to identifytransaction information for the transaction, wherein the transactioninformation includes a transaction date, and product information for theone or more products (block 420). For example, the document managementplatform (e.g., using computing resource 235, processor 320, memory 330,storage component 340, and/or the like) may process, by using a termmatching technique, the receipt data of the receipt to identifytransaction information for the transaction, as described above inconnection with FIGS. 1A-1E. In some implementations, the transactioninformation may include a transaction date, and product information forthe one or more products.

As further shown in FIG. 4, process 400 may include determining that aproduct of the one or more products is associated with a warranty (block430). For example, the document management platform (e.g., usingcomputing resource 235, processor 320, memory 330, storage component340, and/or the like) may determine that a product of the one or moreproducts is associated with a warranty, as described above in connectionwith FIGS. 1A-1E.

As further shown in FIG. 4, process 400 may include identifying one ormore terms of the warranty for the product (block 440). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, and/or the like) mayidentify one or more terms of the warranty for the product, as describedabove in connection with FIGS. 1A-1E.

As further shown in FIG. 4, process 400 may include generating a set oftags identifying the one or more products (block 450). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, and/or the like) maygenerate a set of tags identifying the one or more products, asdescribed above in connection with FIGS. 1A-1E.

As further shown in FIG. 4, process 400 may include associating thetransaction information, the one or more terms of the warranty, and theset of tags with a record of the transaction, wherein the record of thetransaction is searchable (block 460). For example, the documentmanagement platform (e.g., using computing resource 235, processor 320,memory 330, storage component 340, and/or the like) may associate theproduct information, the one or more terms of the warranty, and/or theset of tags with a record of the transaction, as described above inconnection with FIGS. 1A-1E. In some implementations, the record of thetransaction may be accessible via a program that includes a searchfeature that allows the user to search for the receipt or for the one ormore terms of the warranty.

As further shown in FIG. 4, process 400 may include performing one ormore actions associated with assisting a user in managing the warranty,wherein the one or more actions include at least one of: a first groupof one or more actions associated with reminding the user of anexpiration date of the warranty, a second group of one or more actionsassociated with assisting the user in submitting a claim based on thewarranty, or a third group of actions associated with assisting the userin renewing the warranty (block 470). For example, the documentmanagement platform (e.g., using computing resource 235, processor 320,memory 330, storage component 340, input component 350, output component360, communication interface 370, and/or the like) may perform one ormore actions associated with assisting the user in managing thewarranty, as described above in connection with FIGS. 1A-1E. In someimplementations, the one or more actions may include at least one of: afirst group of one or more actions associated with reminding the user ofan expiration date of the warranty, a second group of one or moreactions associated with assisting the user in submitting a claim basedon the warranty, or a third group of actions associated with assistingthe user in renewing the warranty.

Process 400 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, when receiving the receipt data of the receiptof the transaction, the document management platform may receive, from auser device, image data of the receipt of the transaction. Additionally,the document management platform may convert, using a characterrecognition technique, the image data to text data, where the text datais capable of being processed by the term matching technique.

In some implementations, when determining that the product of the one ormore products is associated with the warranty, the document managementplatform may identify a merchant associated with the transaction. Themerchant may be a manufacturer of the product or a retailer. In someimplementations, the document management platform may use a semanticengine parser to analyze a website (e.g., of the merchant) to determinethat the warranty is automatically provided upon purchasing the product.In some cases, the document management platform may determine that theuser purchased the product from the merchant whose website is beingchecked. In some cases, the document management platform may determinethat the user purchased the product from a first merchant (e.g., aretail provider) and may check a web site of a second merchant (e.g., amanufacturer).

In some implementations, when identifying the one or more terms of thewarranty, the document management platform may identify a merchantassociated with the transaction and may identify the one or more termsof the warranty by using a semantic engine parser to analyze a websiteof the merchant that describes the one or more terms of the warranty.The merchant may be a manufacturer of the product or a retailer. In someimplementations, when generating the set of tags, the documentmanagement platform may generate a first subset of tags, of the set oftags, that identify names of the one or more products, a second subsetof tags, of the set of tags, that identify descriptors of the one ormore products, and a third subset of tags, of the set of tags, thatidentify variants of the names of the one or more products or thedescriptors of the one or more products.

In some implementations, when performing the one or more actions, thedocument management platform may determine, as part of the first groupof one or more actions, that a current date is within a threshold timeperiod of the expiration date of the warranty. In some implementations,the document management platform may provide, as part of the first groupof one or more actions and to a user device associated with the user, anotification reminding the user of the expiration date of the warranty.

In some implementations, when associating the transaction information,the one or more terms of the warranty, and the set of tags with therecord of the transaction, the document management platform mayassociate an electronic copy of the receipt of the transaction with therecord of the transaction. Additionally, the document managementplatform may receive, from a user device that is using a search featureof a program or a website, a request for the electronic copy of thereceipt of the transaction. In some implementations, when performing theone or more actions, the document management platform may identify, aspart of the second group of one or more actions, the record of thetransaction based on search terms included in the request. In someimplementations, the document management platform may identify, as partof the second group of one or more actions, the electronic copy of thereceipt of the transaction that was associated with the record of thetransaction. In some implementations, the document management platformmay provide, to the user device and as part of the second group of oneor more actions, the electronic copy of the receipt of the transaction.

Although FIG. 4 shows example blocks of process 400, in someimplementations, process 400 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 4. Additionally, or alternatively, two or more of theblocks of process 400 may be performed in parallel.

FIG. 5 is a flow chart of an example process 500. In someimplementations, one or more process blocks of FIG. 5 may be performedby a document management platform (e.g., document management platform230). In some implementations, one or more process blocks of FIG. 5 maybe performed by another device or a group of devices separate from orincluding the document management platform, such as a user device (e.g.,user device 210), a data storage device (e.g., data storage device 220)and/or the like.

As shown in FIG. 5, process 500 may include receiving receipt data of areceipt of a transaction for one or more products (block 510). Forexample, the document management platform (e.g., using computingresource 235, processor 320, memory 330, storage component 340, inputcomponent 350, communication interface 370, and/or the like) may receivereceipt data of a receipt of a transaction for one or more products, asdescribed above in connection with FIGS. 1A-1E. As used in connectionwith FIG. 5, “terms” may refer to one or more terms which may includeall terms of a warranty or a subset of all of the terms of the warranty.

As further shown in FIG. 5, process 500 may include processing, using aterm matching technique, the receipt data of the receipt to identifytransaction information for the transaction, wherein the transactioninformation includes a transaction date, and product information for theone or more products (block 520). For example, the document managementplatform (e.g., using computing resource 235, processor 320, memory 330,storage component 340, and/or the like) may process, using a termmatching technique, the receipt data of the receipt to identifytransaction information for the transaction, as described above inconnection with FIGS. 1A-1E. In some implementations, the transactioninformation may include a transaction date, and product information forthe one or more products.

As further shown in FIG. 5, process 500 may include determining thatthere is a threshold likelihood that the transaction caused a user to becovered by or eligible for a warranty for a product of the one or moreproducts (block 530). For example, the document management platform(e.g., using computing resource 235, processor 320, memory 330, storagecomponent 340, and/or the like) may determine that there is a thresholdlikelihood that the transaction caused a user to be covered by oreligible for a warranty for a product of the one or more products, asdescribed above in connection with FIGS. 1A-1E.

As further shown in FIG. 5, process 500 may include generating a set oftags identifying the one or more products (block 540). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, and/or the like) maygenerate a set of tags identifying the one or more products, asdescribed above in connection with FIGS. 1A-1E.

As further shown in FIG. 5, process 500 may include associating, using adata structure, the product information, data identifying the warranty,and the set of tags with a record of the transaction, wherein the recordof the transaction is searchable (block 550). For example, the documentmanagement platform (e.g., using computing resource 235, processor 320,memory 330, storage component 340, and/or the like) may associate, usinga data structure, the product information, data identifying thewarranty, and the set of tags with a record of the transaction, asdescribed above in connection with FIGS. 1A-1E. In some implementations,the record of the transaction may be accessible via a program thatallows the user to search for the receipt or for terms of the warranty.

As further shown in FIG. 5, process 500 may include performing one ormore actions associated with assisting the user in managing thewarranty, wherein the one or more actions include a first group of oneor more actions associated with reminding the user of an expiration dateof the warranty, and a second group of one or more actions associatedwith assisting the user in submitting a claim based on the warranty(block 560). For example, the document management platform (e.g., usingcomputing resource 235, processor 320, memory 330, storage component340, input component 350, output component 360, and/or the like) mayperform one or more actions associated with assisting the user inmanaging the warranty, as described above in connection with FIGS.1A-1E. In some implementations, the one or more actions may include afirst group of one or more actions associated with reminding the user ofan expiration date of the warranty, and a second group of one or moreactions associated with assisting the user in submitting a claim basedon the warranty.

Process 500 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, the document management platform may monitor atransaction history of an account associated with the user to identifythe transaction. In some implementations, the document managementplatform may provide a request for electronic mail data associated withan electronic mail account of the user. In some implementations, whenreceiving the receipt data, the document management platform mayreceive, as a response to the request, the electronic mail dataassociated with the electronic mail account of the user. The electronicmail data may include the receipt data. In some implementations, thedocument management platform may process the electronic mail data toidentify the receipt data.

In some implementations, when determining that the transaction causedthe user to be covered by the warranty, the document management platformmay determine that the product information does not indicate whether theuser was covered by the warranty for the product. In someimplementations, the document management platform may provide, to a userdevice associated with the user, a request message asking the userwhether the user received the warranty for the product. In someimplementations, the document management platform may receive, from theuser device, a response message indicating that the user received thewarranty for the product. The response message may include the terms ofthe warranty.

In some implementations, the document management platform may predictthe terms of the warranty using a data model that has been trained onhistorical warranty data and that uses one or more machine learningtechniques. In some implementations, when generating the set of tags,the document management platform may predict, using a data model thathas been trained on historical warranty data and that uses one or moremachine learning techniques, a set of search terms that the user islikely to use when searching for the receipt or for the terms of thewarranty, and may use the set of search terms to generate the set oftags identifying the one or more products.

In some implementations, when performing the one or more actions, thedocument management platform may determine, as part of the first groupof one or more actions, that a current date is within a threshold timeperiod of the expiration date of the warranty, and may automaticallyrenew the warranty based on determining that the current date is withinthe threshold time period of the expiration date of the warranty.

In some implementations, when associating the transaction information,the data identifying the warranty, and the set of tags with the recordof the transaction, the document management platform may associate anelectronic copy of the receipt of the transaction with the record of thetransaction. In some implementations, when performing the one or moreactions, the document management platform may use, as part of the secondgroup of one or more actions, the electronic copy of the receipt of thetransaction as part of the claim.

Although FIG. 5 shows example blocks of process 500, in someimplementations, process 500 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 5. Additionally, or alternatively, two or more of theblocks of process 500 may be performed in parallel.

FIG. 6 is a flow chart of an example process 600. In someimplementations, one or more process blocks of FIG. 6 may be performedby a document management platform (e.g., document management platform230). In some implementations, one or more process blocks of FIG. 6 maybe performed by another device or a group of devices separate from orincluding the document management platform, such as a user device (e.g.,user device 210), a data storage device (e.g., data storage device 220)and/or the like. As used in connection with FIG. 6, “terms” may refer toone or more terms which may include all terms of a warranty or a subsetof all of the terms of the warranty.

As shown in FIG. 6, process 600 may include receiving receipt data of areceipt of a transaction for a product (block 610). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, input component 350,communication interface 370, and/or the like) may receive receipt dataof a receipt of a transaction for a product, as described above inconnection with FIGS. 1A-1E.

As further shown in FIG. 6, process 600 may include processing, usingone or more term matching techniques, the receipt data to identifytransaction information for the transaction, wherein the transactioninformation includes at least one of: a merchant identifier of amerchant associated with the transaction, a date of the transaction, orproduct information for the product (block 620). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, and/or the like) mayprocess, using one or more term matching techniques, the data toidentify transaction information for the transaction, as described abovein connection with FIGS. 1A-1E. In some implementations, the transactioninformation may include at least one of: a merchant identifier of amerchant associated with the transaction, a date of the transaction, orproduct information for the product.

As further shown in FIG. 6, process 600 may include determining that thetransaction caused a user involved in the transaction to be covered byor eligible for a warranty for the product (block 630). For example, thedocument management platform (e.g., using computing resource 235,processor 320, memory 330, storage component 340, and/or the like) maydetermine that the transaction caused a user involved in the transactionto be covered by a warranty for the product, as described above inconnection with FIGS. 1A-1E.

As further shown in FIG. 6, process 600 may include identifying terms ofthe warranty for the product (block 640). For example, the documentmanagement platform (e.g., using computing resource 235, processor 320,memory 330, storage component 340, and/or the like) may identify termsof the warranty for the product, as described above in connection withFIGS. 1A-1E.

As further shown in FIG. 6, process 600 may include associating thetransaction information, the terms of the warranty, and an electroniccopy of the receipt of the transaction with a record of the transaction,wherein the record of the transaction is searchable (block 650). Forexample, the document management platform (e.g., using computingresource 235, processor 320, memory 330, storage component 340, and/orthe like) may associate the product information, the terms of thewarranty, and an electronic copy of the receipt of the transaction witha record of the transaction, as described above in connection with FIGS.1A-1E. In some implementations, the record of the transaction may beaccessible via a program that includes a search feature to search forthe receipt or for the terms of the warranty.

As further shown in FIG. 6, process 600 may include performing one ormore actions associated with assisting the user in managing thewarranty, wherein the one or more actions include at least one of: afirst group of one or more actions associated with reminding the user ofan expiration date of the warranty, or a second group of one or moreactions associated with assisting the user in submitting a claim basedon the warranty (block 660). For example, the document managementplatform (e.g., using computing resource 235, processor 320, memory 330,storage component 340, input component 350, output component 360,communication interface 370, and/or the like) may perform one or moreactions associated with assisting the user in managing the warranty, asdescribed above in connection with FIGS. 1A-1E. In some implementations,the one or more actions may include at least one of: a first group ofone or more actions associated with reminding the user of an expirationdate of the warranty, or a second group of one or more actionsassociated with assisting the user in submitting a claim based on thewarranty.

Process 600 may include additional implementations, such as any singleimplementation or any combination of implementations described belowand/or in connection with one or more other processes describedelsewhere herein.

In some implementations, the document management platform may generate,after identifying the product information, a set of tags identifying theproduct, and, when associating the product information and the terms ofthe warranty with the record of the transaction, the document managementplatform may associate the product information, the terms of thewarranty, and the set of tags with the record of the transaction.

In some implementations, when receiving the receipt data of the receiptof the transaction, the document management platform may receive, from auser device, image data of the receipt of the transaction. In someimplementations, the document management platform may convert the imagedata to a format capable of being processed by the one or more termmatching techniques.

In some implementations, when identifying the terms of the warranty, thedocument management platform may identify the terms of the warranty byusing a semantic engine parser to analyze a website of the merchant thatdescribes the terms of the warranty. The terms may include a termidentifying the expiration date of the warranty, and the term may beused when performing the first group of one or more actions associatedwith reminding the user of the expiration date of the warranty.

In some implementations, when performing the one or more actions, thedocument management platform may determine, as part of the first groupof one or more actions, that a current date is within a threshold timeperiod of the expiration date of the warranty. In some implementations,the document management platform may automatically populate a form torenew the warranty based on determining that the current date is withinthe threshold time period of the expiration date of the warranty. Insome implementations, the document management platform may provide theform that has been populated to a user device associated with the userto permit the user to renew the warranty.

In some implementations, the document management platform may receive,from a user device that is using a search feature of a program or a website, a request for the receipt of the transaction. Additionally, whenperforming the one or more actions, the document management platform mayidentify, as part of the second group of one or more actions, the recordof the transaction based on search terms included in the request. Insome implementations, the document management platform may identify, aspart of the second group of one or more actions, the electronic copy ofthe receipt of the transaction after identifying the record of thetransaction. In some implementations, the document management platformmay provide, to the user device and as part of the second group of oneor more actions, the electronic copy of the receipt of the transaction.

Although FIG. 6 shows example blocks of process 600, in someimplementations, process 600 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 6. Additionally, or alternatively, two or more of theblocks of process 600 may be performed in parallel.

The foregoing disclosure provides illustration and description, but isnot intended to be exhaustive or to limit the implementations to theprecise form disclosed. Modifications and variations are possible inlight of the above disclosure or may be acquired from practice of theimplementations.

As used herein, the term component is intended to be broadly construedas hardware, firmware, or a combination of hardware and software.

Some embodiments described herein may refer to receiving, processing,generating, and/or providing personal information of users. It should beunderstood that any use of the personal information may be subject toconsent of the users and will be used in a manner that is compliant withapplicable laws concerning protection and/or use of personalinformation.

Some implementations are described herein in connection with thresholds.As used herein, satisfying a threshold may refer to a value beinggreater than the threshold, more than the threshold, higher than thethreshold, greater than or equal to the threshold, less than thethreshold, fewer than the threshold, lower than the threshold, less thanor equal to the threshold, equal to the threshold, or the like.

Certain user interfaces have been described herein and/or shown in thefigures. A user interface may include a graphical user interface, anon-graphical user interface, a text-based user interface, or the like.A user interface may provide information for display. In someimplementations, a user may interact with the information, such as byproviding input via an input component of a device that provides theuser interface for display. In some implementations, a user interfacemay be configurable by a device and/or a user (e.g., a user may changethe size of the user interface, information provided via the userinterface, a position of information provided via the user interface,etc.). Additionally, or alternatively, a user interface may bepre-configured to a standard configuration, a specific configurationbased on a type of device on which the user interface is displayed,and/or a set of configurations based on capabilities and/orspecifications associated with a device on which the user interface isdisplayed.

It will be apparent that systems and/or methods, described herein, maybe implemented in different forms of hardware, firmware, or acombination of hardware and software. The actual specialized controlhardware or software code used to implement these systems and/or methodsis not limiting of the implementations. Thus, the operation and behaviorof the systems and/or methods were described herein without reference tospecific software code—it being understood that software and hardwarecan be designed to implement the systems and/or methods based on thedescription herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of example implementations. In fact,many of these features may be combined in ways not specifically recitedin the claims and/or disclosed in the specification. Although eachdependent claim listed below may directly depend on only one claim, thedisclosure of example implementations includes each dependent claim incombination with every other claim in the claim set.

No element, act, or instruction used herein should be construed ascritical or essential unless explicitly described as such. Also, as usedherein, the articles “a” and “an” are intended to include one or moreitems, and may be used interchangeably with “one or more.” Furthermore,as used herein, the term “set” is intended to include one or more items(e.g., related items, unrelated items, a combination of related andunrelated items, etc.), and may be used interchangeably with “one ormore.” Where only one item is intended, the term “one” or similarlanguage is used. Also, as used herein, the terms “has,” “have,”“having,” or the like are intended to be open-ended terms. Further, thephrase “based on” is intended to mean “based, at least in part, on”unless explicitly stated otherwise.

What is claimed is:
 1. A method, comprising: receiving, by a device,receipt data, the receipt data associated with a receipt of atransaction for one or more products; training, by the device, a datamodel that uses one or more machine learning techniques, the data modelbeing trained with historical warranty data including informationregarding a correspondence between a plurality of products, includingthe one or more products, and a plurality of warranties; determining, bythe device and using the data model, that a threshold likelihood thatthe transaction caused a user to be covered by or eligible for awarranty for a product of the one or more products is satisfied based ona confidence level indicating that the warranty is associated with theproduct, the data model to: receive as input the receipt data, andoutput one or more indicator values to provide an indication of theconfidence level; and sending, by the device, a notification about thewarranty associated with the product based on determining that thethreshold likelihood is satisfied.
 2. The method of claim 1, comprising:identifying, by a semantic engine parser, one or more terms of thewarranty for the product to analyze a website of a merchant associatedwith the transaction that describes the one or more terms of thewarranty.
 3. The method of claim 1, further comprising: automaticallypopulating a renewal form to renew the warranty prior to an expirationdate of the warranty.
 4. The method of claim 1, further comprising:assisting the user in submitting a claim based on the warranty.
 5. Themethod of claim 1, further comprising: processing the receipt of thetransaction to identify transaction information and product informationfor the one or more products.
 6. The method of claim 1, furthercomprising: associating an electronic copy of the receipt of thetransaction with a record of the transaction; receiving, from a userdevice that is using a search feature of a program or a website, arequest for the electronic copy of the receipt of the transaction;identifying the record of the transaction based on search terms includedin the request; identifying the electronic copy of the receipt of thetransaction that was associated with the record of the transaction; andproviding, to the user device, the electronic copy of the receipt of thetransaction.
 7. The method of claim 1, further comprising: associatingtransaction information from the receipt data with information about thewarranty.
 8. A device, comprising: one or more memories; and one or moreprocessors, operatively coupled to the one or more memories, to: receivereceipt data, the receipt data associated with a receipt of atransaction for one or more products; train a data model that uses oneor more machine learning techniques, the data model being trained withinformation regarding a correspondence between a plurality of products,including the one or more products, and a plurality of warranties;determine, using the data model, that a threshold likelihood that thetransaction caused a user to be covered by or eligible for a warrantyfor a product of the one or more products is satisfied based on aconfidence level indicating that the warranty is associated with theproduct, the data model to: receive as input the receipt data, andoutput one or more indicator values to provide an indication of theconfidence level; and send a notification about the warranty associatedwith the product based on determining that the threshold likelihood issatisfied.
 9. The device of claim 8, wherein the one or more processorsare further to: provide the notification to an account associated withthe user of the product.
 10. The device of claim 8, wherein the one ormore processors are further to: identify, by a semantic engine parser,one or more terms of the warranty for the product to analyze a websiteof a merchant associated with the transaction that describes the one ormore terms of the warranty.
 11. The device of claim 8, wherein the oneor more processors are further to: automatically populate a renewal formto renew the warranty prior to an expiration date of the warranty. 12.The device of claim 8, wherein the one or more processors are furtherto: assist the user in submitting a claim based on the warranty.
 13. Thedevice of claim 8, wherein the one or more processors are further to:process the receipt of the transaction to identify transactioninformation and product information for the one or more products. 14.The device of claim 8, wherein the one or more processors are furtherto: associate an electronic copy of the receipt of the transaction witha record of the transaction; receive, from a user device that is using asearch feature of a program or a website, a request for the electroniccopy of the receipt of the transaction; identify the record of thetransaction based on search terms included in the request; identify theelectronic copy of the receipt of the transaction that was associatedwith the record of the transaction; and provide, to the user device, theelectronic copy of the receipt of the transaction.
 15. A non-transitorycomputer-readable medium storing one or more instructions, the one ormore instructions comprising: one or more instructions that, whenexecuted by one or more processors, cause the one or more processors to:receive receipt data associated with a transaction for one or moreproducts; train a data model that uses one or more machine learningtechniques, the data model being trained with historical data includinginformation regarding a correspondence between a plurality of products,including the one or more products, and a plurality of warranties;determine, using the data model, that a threshold likelihood that thetransaction caused a user to be covered by or eligible for a warrantyfor a product of the one or more products is satisfied based on aconfidence level indicating that the warranty is associated with theproduct, the data model to: receive as input the receipt data, andoutput an indication of the confidence level; and send a notificationabout the warranty associated with the product based on determining thatthe threshold likelihood is satisfied.
 16. The non-transitorycomputer-readable medium of claim 15, wherein the one or moreinstructions, that cause the one or more processors to send thenotification about the warranty, cause the one or more processors to:send the notification to the user regarding information needed to renewthe warranty, or send the notification to the user regarding informationneeded to make a claim based on a term of the warranty not beingfulfilled.
 17. The non-transitory computer-readable medium of claim 15,wherein the one or more instructions, when executed by the one or moreprocessors, further cause the one or more processors to: identify, by asemantic engine parser, one or more terms of the warranty for theproduct to analyze a website of a merchant associated with thetransaction that describes the one or more terms of the warranty. 18.The non-transitory computer-readable medium of claim 15, wherein the oneor more instructions, when executed by the one or more processors,further cause the one or more processors to: automatically populate arenewal form to renew the warranty prior to an expiration date of thewarranty.
 19. The non-transitory computer-readable medium of claim 15,wherein the one or more instructions, when executed by the one or moreprocessors, further cause the one or more processors to: assist based onthe user in submitting a claim based on the warranty.
 20. Thenon-transitory computer-readable medium of claim 15, wherein the one ormore instructions, when executed by the one or more processors, furthercause the one or more processors to: associate an electronic copy of areceipt associated with receipts data of the transaction with a recordof the transaction; receive, from a user device that is using a searchfeature of a program or a website, a request for the electronic copy ofthe receipt of the transaction; identify the record of the transactionbased on search terms included in the request; identify the electroniccopy of the receipt of the transaction that was associated with therecord of the transaction; and provide, to the user device, theelectronic copy of the receipt of the transaction.